Kademi has a powerful tool to automate some usually actions based on a specific user interactions. There are numerous triggers, which helps to create flexible conditions in the system, as well as actions, which are triggering as a reaction on the user interaction. The simplest example is automation of email sending when user is registering in some specific group or for example, user posts a comment in some specific forum.

This page is designed to provide you a powerful complete toolkit for managing you automation trigger. It contains six tabs

General

In this section you provide general properties about the auto email:

Name: Just a name to keep track of this item. Good to keep it short.

Enabled: triggers will only be processed if they're enabled. Also, if any items are queued due to event delay, then queue processing will be paused while the email is disabled. Note that new items are not added to the queue if the email is disabled.

Notes: This is an area for you to add notes about what the trigger is and why it does what it does. This will make it easier for your colleagues to understand and modify your triggers.

Triggers

This section you setup the conditions which cause the actions to run. We often refer to the trigger as "firing".

Event type: Events are things that can happen in the FuseLMS platform which can fire triggers. They're grouped into event types, and for a single event type there may be several different actions. Event types are provided by applications, so what event types are available will depend on what applications you've installed in your account. Select an event type to see possible actions which allow you to only fire for specific items. For example, if you choose a "subscription" event, which fires when a user joins or leaves a group, you can specify which group.

Enable event delay: Sometimes you only want the trigger actions to occur some time after the initial event has occured. For example, you might want to send a follow up email several days after a user registers. To do that tick the event delay check box and then enter the duration of the delay, eg 7 days. You can view queued triggers with the "Queued triggers" link.

Advanced: This section allows complex rules to be entered using XML syntax. This is only recommended for expert, technical, users.

MVEL Rules

The expression uses MVEL syntax, see the MVEL language guide here for detailed explanation

An example of an expression for a module progress event, which is true when the user is more then 50% through a course:

event.attributes.module.parent.percentComplete > 50

The following objects are available as the root of the expression

  • event - different types of event objects are available depending on what event is the source of the trigger.
  • rootFolder - information about the current website
  • user - information about the current user
  • formatter - useful functions for converting and formatting data
  • request - information about the current http request. Not available for delayed events. Access request parameters like this: request.params.SomeInput

 

Actions

Here you specify what you want to happen when the trigger fires.

Send an email: This is what you would normally use. It sends an email to the configured recipients in the next section

Website: Select the website to use for the email template. The default email template is unformatted html, but you can modify the theme to include your logo and footer links, etc

Email subject: The subject line for the email.

Email from address: The email address which will appear to have sent the email. You might want to use a noreply@.. address, or your own address. Note that you should always use an address on a domain which has been configured to specify olhub.com as the mail server in the the SPF record. See here for details

Message body: Enter a rich text (html) formatted email body. You can use template tags to personalise email content:

Template Item Notes Example
website If the event has been raised from a website (eg a contact or registration event) then this item will be present. You can use it to get an address to the site. @{website.domainName}
profile The user profile of the originating user, ie who caused the event. This will not be available for requests from anonymous sources, such as contact forms. @{profile.nickName}
event This is the event which caused the trigger to fire. There are different event types with different properties

Contact event:

@{event.attributes.contactRequest.firstName}

Recipients

Add the recipients. These will be used for all actions, including sending the email to and being added to a selected group

If ticked the originating user is included in recipients

Add recipient groups: Add any groups you want to receive this email here. Usually this will be used for a list of administrators to send to. Note that ALL members of these groups will receive this email

Add excluded groups: This is a list of groups which will filter out anyone who would otherwise receive the email. For example, you might have a recipient group of 'admin's, but exclude 'managers', so that only admins who are not managers receive the email.

Email History

In this section you get to see recent email messages which have been processed. Note that delayed messages (ie where the messages has occured, but has not yet been processed due to delay) are not shown here. The status column shows whether the message has been processed successfully, or could not be processed, or is queued for processing.

Page contains date filder to make it easier to find the interested message

SMS History

In this section you get to see recent SMS which have been processed. Note that delayed SMS (ie where the SMS has occured, but has not yet been processed due to delay) are not shown here. The status column shows whether the SMS has been processed successfully, or could not be processed, or is queued for processing.

Page contains date filder to make it easier to find the interested SMS

Ask a question, or offer an answer